Placement pricing in a networked advertising environment

ABSTRACT

A method for purchasing advertising space in an Internet environment is provided. The method may include receiving advertiser orders that including an order budget. The method may also include displaying, via a user interface, the order budget and an available budget. The available budget may correspond to an amount of the order budget available for purchasing advertising space. The method may also include receiving, via the user interface, parameters including a desired number of impressions, a proposed cost per impression, and a total cost. Non-received parameters may be calculated based on the received parameters. The available budget may be decremented by the total cost. A desired number of impressions may then be purchased based on the proposed cost per impression.

RELATED APPLICATIONS

The present application relates to applications entitled: “SUPPLY CURVEPRICING IN A NETWORKED ADVERTISING ENVIRONMENT,” (Atty. Dkt. 12729/442)filed on May 30, 2008, U.S. Ser. No. ______, now U.S. Pat. No. ______;

“AUTOMATIC AD GROUP CREATION IN A NETWORKED ADVERTISING ENVIRONMENT,”(Atty. Dkt. 12729/444) filed on May 30, 2008, U.S. Ser. No. ______, nowU.S. Pat. No. ______;

“SYSTEM FOR DISPLAYING INVENTORY SEARCH PARAMETERS FOR AN ADVERTISER,”(Atty. Dkt. 12729/445) filed on May 30, 2008, U.S. Ser. No. ______, nowU.S. Pat. No. ______; and

“SYSTEM FOR DISPLAYING A POSITION VIEWER FOR PREVIEWING THE DISPLAY OFAN ADVERTISEMENT,” (Atty. Dkt. 12729/446) filed on May 30, 2008, U.S.Ser. No. ______, now U.S. Pat. No. ______, each of which is incorporatedby reference.

BACKGROUND

The Internet has emerged as a powerful advertising tool. It is commonplace to see advertisements on many web sites. For example,advertisements may be displayed on search web sites and may be targetedto individuals based upon search terms provided by the individuals.Other web sites, such as news and sports web sites, may provide spacefor advertisements. The owners of these web sites may sell advertisingspace to advertisers to offset the costs associated with operating theweb sites as well as to turn a profit.

As the internet has grown, the number of web sites available for hostingadvertisements has increased. The diversity between web sites has alsoincreased. That is, the number of web sites focusing on selective groupsof individuals has increased. For example, some web sites cater togaming enthusiasts. Some may cater to women in a certain age group. As aresult of the increase, it has become increasingly difficult foradvertisers to optimize their advertising budgets. For example, some websites may be better suited to a particular advertiser's products thanothers. Advertisers unfamiliar with the vast number of web sitesavailable for hosting advertisements may choose to host their respectiveadvertisements on a less than optimal host web site. This may result ina lower rate of return for the advertiser. The advertiser may havereceived a greater rate of return had the advertiser chosen a moresuitable host web site.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram illustrating the relationship between an ad spacebroker, advertisers, and publishers;

FIG. 2 is an exemplary publisher web page;

FIG. 3 is a system that may be utilized by an ad broker to enablematching advertiser advertisements to publisher web sites;

FIG. 4 is a system for communicating advertisements to web pagesgenerated by publisher web sites;

FIG. 5 is an exemplary search result user interface for displaying alist of publisher web sites that may be suitable for displayingadvertiser advertisements;

FIG. 6A is a filter box user interface that may be utilized to refinethe list of publisher web sites shown in the search result userinterface;

FIG. 6B is a pop up menu for editing an ad group;

FIG. 7 is a price placement user interface for purchasing advertisementplacements;

FIG. 8 is an exemplary ad group manager user interface;

FIG. 9 is a second embodiment of an exemplary search result userinterface for displaying a list of networks that may be suitable fordisplaying advertiser advertisements;

FIG. 10 is a price placement user interface that may be utilized forpurchasing advertisement placements in a network;

FIG. 11 is a flow diagram for matching advertiser advertisements topublisher web sites;

FIG. 12 is a flow diagram for specifying purchasing information;

FIG. 13 is a flow diagram for specifying purchasing information in asecond embodiment; and

FIG. 14 illustrates a general computer system, which may represent anyof the computing devices referenced herein.

DETAILED DESCRIPTION OF THE DRAWINGS AND THE PRESENTLY PREFERREDEMBODIMENTS

FIG. 1 is a diagram 100 illustrating the relationship between an adspace broker 105, advertisers 102, and publishers 110. The ad spacebroker 105 may receive advertiser orders 115 from advertisers 102seeking to have their respective advertisements displayed on publisher110 web sites. The advertiser orders 115 may include audience targetinginformation. For example, demographic, behavioral, and geographicinformation may be specified in the order. The demographic informationmay be utilized to target certain age groups and genders. The behavioralinformation may be utilized to target individuals with certain buyingpreferences. The geographic information may be utilized to targetindividuals in a particular geographic location. The advertisers 102 mayalso provide information that may be utilized to target individuals thatutilize a particular technology. For example, the advertisers 102 maywish to target individuals who utilize a particular Internet browser,computer, and/or operating system. The advertisers 102 may also specifyinformation for positioning an advertisement. For example, theadvertiser 102 may want advertisements displayed on the top of a webpage that operates on a publisher's 110 web site. The advertiser 100 mayalso include budget information. The budget information may correspondto a maximum amount of money that an advertiser 100 may be willing tospend on an advertising campaign. The orders 1 15 from the advertisers102 may include other information as well and may be presented in anysuitable format, such as a hypertext markup language (HTML) pageconveyed from an advertiser 102 to the ad space broker 105.

The ad space broker 105 may receive web site information 120 frompublishers 110 that operate web sites with web pages that displayadvertisements. The web site information 120 may include advertisementposition information that may correspond to a position on a web page fordisplaying advertisements. For example, the position information mayindicate that advertisements may be displayed on the top or sides of theweb page. The web site information 120 may also include informationrelated to a respective target audience for the web site. For example,the publishers 110 may provide demographic, behavioral, and geographicinformation related to their respective audiences. The publishers 110may also specify the technology utilized by their audience in accessingthe publisher's 110 web sites. For example, a particular publisher's 110web site may only be suited for a particular Internet browser orproducts sold via the publishers 110 web site may only be for a specifictype of hardware. The publishers 110 may also provide rate cardinformation related to the web site. The rate card information maycorrespond to a range of prices for displaying advertisements on thepublisher's web sites. For example, the rate card information mayinclude a floor, target and list CPM (cost per thousand impressions). Animpression corresponds to displaying an advertisement on a publisher webpage, clicking on an advertisement, or purchasing goods or servicesafter clicking on an advertisement. The floor CPM may correspond to theminimum price the publisher 110 may be willing to accept. The list CPMmay correspond to the same price that the publisher 110 may charge whenthe publisher sells advertising space directly to advertisers. Thetarget CPM may correspond to a target selling price that an ad spacebroker 105 may try to achieve for the impressions.

In operation, the ad space broker 105 may receive advertiser orders 115for placing advertisements from advertisers 100. The advertiser orders115 may include demographic, behavioral, geographic and technologyinformation for an audience the advertiser 100 may be targeting asdescribed above. The advertiser orders 115 may also include budgetinformation related to the maximum amount the advertisers 100 may bewilling to spend on advertising. The ad space broker 105 may alsoreceive web site information 120 from publishers 110. The web siteinformation 120 may include advertisement position, demographic,behavioral, geographic, and technology information as described above.The web site information 120 may also include a desired price that thepublisher 110 wishes to obtain for the placement of advertisements.

The ad space broker 105 may then match advertiser orders 115 topublisher 110 web sites based on information provided in the advertiserorders 100 and the web site information 120. After matching advertiserorders 115 with publisher 110 web sites, a link to an ad server may beprovided to the publishers 110. The link may enable communicatingadvertiser 100 advertisements from the ad server to web pages generatedby the publishers 110. The link may be embedded within the browser codeutilized to render the web pages and may enable the Internet browser toretrieve the advertisement from the ad server.

FIG. 2 is an exemplary publisher web page 200. The web page 200 mayinclude an advertisement region 210 with an advertisement 205. Thepublisher of the web page 200 may have provided demographic and/orbehavioral information that indicated that women interested in makeupfrequent the web page 200. The publisher may have provided positioninformation corresponding to the advertisement region 210 of the webpage 200. For example, in this case the publisher may have specifiedthat advertisements may be displayed on the right side of the web page200. A link to an ad server for communicating advertisements may havebeen provided to the publisher. In this case, the ad server may havecommunicated a makeup advertisement. The advertiser associated with theadvertisement 205 may have previously provided, as part of an advertiserorder 115, audience targeting information that specified the targetaudience as woman who purchase makeup. By displaying the advertisementsthe publisher of the web site hosting the web page 200 may subsidize thecosts associated with operating the web site and may also turn a profit.

FIG. 3 is a system 300 that may be utilized by an ad broker to enablematching advertiser advertisements to publisher web sites. The system300 includes a computer 305 in communication with a publisher web siteinformation database 310, an advertiser order database 315, and an adgroup database 320. The computer 305 may comprise suitable logic, code,and/or circuitry that may enable operating a computer program forperforming the operations described above. For example, the computer 305may be configured to communicate order information from advertisers andweb site information from publishers. The system 300 may be adapted tostore the information communicated into a database. For example,information related to publisher web sites may be stored in thepublisher information database 310 and advertiser orders may be storedin the advertiser order database 315.

The computer 305 may also be configured to execute an application formatching orders communicated from the advertisers to publisher websites. For example, the application may enable the entry of advertiserorders and publisher web site information. The application may storeinformation in the advertiser order and publisher web site informationdatabases 315 and 310 respectively. The application may then enablesearching through the publisher web site information database 310 forpublisher web sites that may be suitable for displaying an advertiseradvertisement. For example, via the application, the ad broker mayspecify a desired position for an advertisement. The ad broker may alsospecify demographic, behavioral, geographic, and technology informationcorresponding to the target audience for the advertisement.

The computer 305 may also be configured to execute an application thatenables booking advertisement placements on the publisher websites andadding the publisher web sites to the ad group database 320. Forexample, the application may enable specifying the number ofimpressions, cost per impression, and total cost associated with bookingthe advertisement placements. After specifying the information, thepublisher web site may be added to an ad group of publisher web sitesand saved to the ad groups database 320. The publisher web sites in thead group may be related in that the publisher web sites may sharevarious attributes. For example, the publisher web sites may all targeta particular demographic group. Grouping and saving the publisher websites in an ad group may enable quickly purchasing placement for similarads. For example, an ad group may have been created for targeting aparticular advertisement to males between the ages of 20 and 30. Later,an advertiser may wish to place new advertisements to the same group. Inthis case, the ad broker may link the new advertisement to the ad groupwithout having to repeat a search for publisher web sites that match thedesired target audience.

FIG. 4 is a system 400 for communicating advertisements to web pagesgenerated by publisher web sites. The system 400 includes an ad server410 and an advertisement database 420. The system 400 communicates witha publisher web sever 405 as is also shown in FIG. 4. The publisher webserver 405 may include suitable logic, code, and/or circuitry that mayenable communicating web pages to an Internet browser 415 operating on auser terminal 425. For example, the publisher web server 405 maycorrespond to a computer with an operating system, such as Windows® orLinux. An application, such as Apache®, may operate on the publisher website and may enable communicating web page information to Internetbrowsers. The web page information may include web page contentinformation, such as graphics, audio, and text. The web page informationmay also include execution instructions that may enable retrievingadvertisements from the ad server 410.

The ad server 410 may include suitable logic, code, and/or circuitrythat may enable selecting and communicating advertisements to anInternet browser 415. For example, the ad server 410 may correspond to acomputer with an operating system, such as Windows® or Linux that may besuitable for hosting an advertisement server application. Theadvertisement server application may enable communicating advertisementsto Internet browsers. The ad server 410 may include or be incommunication with an advertisement database 420. The advertisementdatabase 420 may include advertisement content data, such as graphics,text, and/or audio that may be communicated to the Internet browser 415.The advertisement content data may also include publisher web sitetargeting data that may be utilized to associate the advertisement withpublisher web sites. The publisher web sites may have been previouslyassociated with the advertisement via the system 300 (FIG. 3) describedabove.

In operation, a request to display a web page may be communicated fromthe Internet browser 415 to the publisher web server 405. In response,the publisher web server 405 may communicate a web page to the Internetbrowser 415. The web page communicated may include executioninstructions for retrieving an advertisement. The execution instructionsmay enable communicating an advertisement from the ad server 410 to theInternet browser 415. In doing so, the Internet browser 415 maycommunicate publisher web site identifying data to the ad server 410.This may allow the ad server 410 to determine the identity of thepublisher web site corresponding to the web page being displayed on theInternet browser 415. Upon receiving the publisher web site identifyingdata, the ad server 410 may search through the advertisement database420 for an advertisement that may be associated with the publisher website. After locating such an advertisement, the ad server 410 maycommunicate the advertisement content data to the Internet browser 415.

FIG. 5 is an exemplary search result user interface 500 for displaying alist of publisher web sites that may be suitable for displayingadvertiser advertisements. The search result user interface 500 may begenerated by the application operating on the computer 305 shown in FIG.3. The search result user interface 500 may include a search resultregion 505 and an ad group region 510. The search result region 505 mayinclude a series of columns including a site column 515, a categorycolumn 520, a bookable impressions column 525, and floor CPM column 530,target CPM column 535, and list CPM column 545. A filter button 540 mayalso be shown.

The ad group region 510 may include a series of columns including a sitecolumn 550, a category column 555, a position column 560, an addimension column 565, a flight dates column 570, a CPM column 575, animpressions column 580, and a cost column 590. The search result userinterface may include other types of information or the information maybe presented or combined in other ways according to the nature of theinformation or the requirements of the user.

A list of publisher web sites that match the targeting informationprovided in an advertiser order may be shown in the search result region505. For example, the name of the publisher web sites may be shown inthe sites column 515. A category for each publisher web site may beshown in the category column 520. For example, the category may be“sports” for a web site related to sports. The number of bookableimpressions available for the publisher web sites may be shown in thebookable impressions column 525. The bookable impressions may correspondto the number of impressions a publisher may have available.

Rate card information for each publisher web site may also be shown. Therate card information may correspond to a floor CPM, target CPM, andlist CPM associated with the publisher web site. The floor, target, andlist CPM for each publisher web site may be shown in the floor CPMcolumn 530, the target CPM column 535 and list CPM column 545. Thefloor, target and list CPM may correspond to various prices at whichimpressions may be purchased. Other manners of expressing a purchaseprice, such as cost per click (CPC) or cost per action (CPA) may be usedand illustrated instead or in addition. The floor CPM may correspond tothe minimum price a publisher may be willing to accept. The list CPM maycorrespond to the price at which the publisher may sell advertisingspace directly to advertisers. The target CPM may correspond to a targetselling price that an ad broker may try to achieve for selling theimpressions. In other words, to maximize a profit, an ad broker may bemotivated to sell impressions for as much as he can. The target CPM mayrepresent the price goal for the ad broker.

A filter button 540 may be provided that may enable narrowing the listof publisher web sites further. Clicking the filter button 540 may bringup the filter box user interface 600 shown in FIG. 6A. Referring to FIG.6A, the filter box 600 may include a bookable impressions check box 605,a floor CPM check box 610, a bookable impression entry box 615, and afloor CPM entry box 620. Via the bookable impression entry box 615 thead broker may narrow the list of publisher web sites to those publishersthat are capable of providing a certain guaranteed minimum number ofimpressions. Via the floor CPM entry box 620 the ad broker may narrowthe list of publisher web sites to only those publisher web sites thathave, for example, a floor CPM less than the value entered. Thepublisher web site list may be filtered by checking either or both thebookable impressions check box 605 and floor CPM check box 610. Otherparameters and values may be specified in the filter box user interfaceas well. Filtering by bookable impressions and floor CPM is intended tobe exemplary only. After the filter value is applied, the publisher listmay be limited accordingly. For example, only publisher web sites withthe specified number of bookable impressions and/or a floor CPM pricebelow the specified floor CPM may be shown.

Returning to FIG. 5, the ad broker may specify an impression goal, aproposed CPM and a total cost to be spent for each publisher website viaa user interface, such as the price placement box 700 shown in FIG. 7.Referring to FIG. 7, the price placement box 700 may include an orderbudget field 705, an available budget field 710, an impression goalentry box 715, a proposed CPM entry box 720, a cost entry box 725, abookable impressions field 745, a rate card field 750, an impressiongoal lock 730, a proposed CPM lock 735, and a cost lock 740.

The order budget field 705 may correspond to the total budget specifiedin an advertiser order and the available budget field 710 may correspondto the amount of the order that has not yet been committed. For example,a budget of $20,000 may be specified in an order and $10,000 may havebeen previously utilized for purchasing placements on publisher websites. Displaying the available budget in the price placement box mayenable the ad broker to quickly ascertain the amount of budget he mayhave to work with.

The impression goal entry box 715, proposed CPM entry box 720, and costentry box 725 may be utilized by the ad broker to specify the number ofimpressions desired, a proposed CPM for each impressions, and a totalcost associated with purchasing the desired impressions at the proposedCPM.

The bookable impressions field 745 may display the total number ofimpression available for booking impressions on a publisher web site.Displaying the total number of bookable impressions available may enablethe ad broker to ascertain the maximum number of impressions he may haveto work with.

The rate card field 750 may display the floor, target and list CPMassociated with a given publisher web site. Displaying the floor, targetand list CPM may enable the ad broker to ascertain a suitable value forthe proposed CPM. For example, the floor CPM may correspond to thelowest price per 1000 impressions a publisher may be willing to accept.The list CPM may correspond to the price at which the publisher sellsadvertising space directly to advertisers.

The number of impressions desired, proposed CPM, and the total cost maybe related by the following equation:

NumOfImpressions×proposed CPM=total cost.

For example, the total cost for 10,000 impressions at a cost of $6.25per 1000 impression is $62.50. The impression goal lock 730, proposedCPM lock 735, and cost lock 740 may enable the ad broker to lock thevalue specified in the impression goal entry box 715, proposed CPM entrybox 720, and cost entry box 725 respectively. For example, the ad brokermay be more concerned about costs than a specific number of impressions.In this case, the ad broker may lock a value in the cost entry box 725via the cost lock 740. The ad broker may then specify a desired CPM inthe proposed CPM entry box 720 and upon entering a value, the number ofimpressions may automatically be calculated. In other instances, the adbroker may be more concerned about achieving a certain number ofimpressions rather than the total cost. In this case, the ad broker mayspecify and lock the value in the impression goal entry box 715 andunlock the value in the cost entry box 725. As before, the ad broker maythen specify a proposed CPM and in this case the total cost may beautomatically calculated. In yet another instance, the ad broker maydesire a specific number of impression and may also wish to control thetotal cost. In this case, the ad broker may lock the values specified inthe impression goal entry box 715 and cost entry box 725 and unlock thevalue in the proposed CPM entry box 720. Upon specifying the impressiongoal and/or the cost, the proposed CPM may be calculated.

Displaying the order budget and available budget along with the numberof bookable impressions and the rate card information may allow the adbroker to quickly determine how many impressions to purchase and anoptimal price for the impressions. Providing parameter locks may enablethe ad broker to lock important parameters and automatically calculateless important parameters. This may further aid the ad broker indetermining the number of impressions to purchase and the optimal pricefor the impressions.

Returning to FIG. 5, the ad broker may add publisher web sites to the adgroup region 510. The names of publisher web sites may be displayed inthe site column 550. The categories within which the publisher web sitesfall may be shown in the category column 555. The location of theadvertisement region within publisher web pages may be displayed withinthe position column 560. For example, the value “North” may be shownwhen the region for displaying the advertisement is towards the top ofthe web page. The dimension of an advertisement region within the webpage may be shown in the ad dimension column 565. The values shown inthe ad dimension column 465 may correspond to the size in pixels of theadvertisement region. The dates for displaying the advertisement may beshown in the flight dates column 570. The proposed CPM, impression goaland cost associated with each publisher web site may be shown in the CPMcolumn 575, impression column 480, and cost column 485 respectively. Thevalues in CPM column 575, impression column 580, and cost column 585 maycorrespond to the values specified via the price placement box 700 (FIG.7) described above.

The publisher web sites in the ad group region may then be saved underan ad group name. For example a default name, such as “Ad group 1” maybe generated. Clicking a more actions button 595 may generate a pop upmenu, such as the pop up menu 625 shown in FIG. 6B. The pop up menu 625may enable changing the name of the ad group to a more descriptive name,such as “Sports Males”, as shown in FIG. 5. The pop up menu 625 may alsoenable cloning or copying an ad group to a new ad group. An example ofwhere cloning may be useful is where some, but not all of the publisherweb sites in a base ad group are relevant to a particular advertisement.In this case, the non-relevant publisher web sites may be deleted fromthe newly cloned ad group. This may enable quickly generating a varietyof ad groups that share common attributes with a base ad group.Alternatively, a parent ad group may be created and then cloned.Additional publisher web sites may then be added to the cloned ad groupsto create children ad groups. The children ad groups may share targetaudience information with the parent ad group and may also includetarget audience information unique to the child ad group.

FIG. 8 is an exemplary ad group manager user interface 800. The ad groupmanager user interface 800 may include an order budget field 805, anavailable budget field 810, and first and second ad group regions 815and 820. The order budget 805 and available budget 810 may correspond tothe total budget for an order and the amount of budget available formaking additional placements.

The first and second ad group regions 815 and 820 include an amountconsumed field 825, a target profile field 830, a placements field 835,a creatives/ad field 840, an edit placements link 845, and an addcreatives link 850. The consumed field 825 may display the total amountof the order budget spent on a particular ad group. The target profiledfield 830 may display targeting information associated with the adgroup, such as demographic, behavioral, and geographic information. Theplacements field 835 may display the number of publisher web siteswithin the ad group and the creatives/ad field may display the number ofadvertisements associated with the ad group.

The edit placements link 845 may enable editing placements associatedwith an ad group. For example, the link may direct the ad broker to thesearch result user interface 500 shown in FIG. 5 and may populate thesearch result user interface 500 with the publisher web sites in the adgroup. From there, the ad broker may add and remove publisher web sitesfrom the ad group. The add creatives link 850 may enable associatingadvertiser advertisements with the ad group.

The second ad group 820 may correspond to a copied version of the firstadd group 815. An ad broker may, for example, wish to treat a given adgroup as a base ad group and then may create clones of the base ad groupand make subtle placement edits to the cloned ad groups. This may enablequickly generating a variety of ad groups that may be focused on a morerefined target audience than the original base ad group.

In a second embodiment, advertisers may not be so interested in theidentity of the publisher web sites where their respectiveadvertisements may be shown. Rather, the advertisers may be moreconcerned with obtaining as many impressions as possible for a givenprice. In this case, impressions may be booked on networks of publisherweb sites. FIG. 9 is an exemplary search result user interface 900 fordisplaying a list of networks that may be suitable for displayingadvertiser advertisements. The search result user interface 900 may begenerated by the application operating on the computer 305 shown in FIG.3. The search result user interface 900 may include a search resultregion 905 and an ad group region 910. The search result region 905 mayinclude a series of columns including a network column 915, a categorycolumn 920, a bookable impressions column 925, and floor, target, andlist CPM columns 930, 935, and 945. A filter button 940 may also beshown.

The ad group region 910 may include a series of columns including anetwork column 995, a category column 950, a position column 955, an addimension column 960, a flight dates column 965, a CPM column 970, animpressions column 975, and a cost column 980.

A list of networks that include web sites that match the targetinginformation provided in an advertiser order may be shown in the searchresult region 905. Each network may correspond to a collection ofpublisher web sites that may be administered by a network administrator.The name of each network that includes publisher web sites that matchthe audience targeting information provided in an advertiser order maybe shown in the networks column 915. The number of bookable impressionsavailable within the network may be shown in the bookable impressionscolumn 925. The bookable impressions may correspond to the sum of thenumber of impressions each publisher in the network may be willing toguarantee an advertiser. For example, a publisher may guarantee that anadvertisement displayed on the publisher's web site may be displayed20,000 times during a given time frame.

The ad broker may specify an impression goal, a proposed CPM and a totalcost to be spent for each network via a user interface, such as thenetwork price placement box 1000 shown in FIG. 10. Referring to FIG. 10,the network price placement box 1000 may include an impression goalentry box 1020, a proposed CPM entry box 1030, a cost entry box 1035, abookable impression field 1040, an order budget and available budgetfield 1045, and a CPM slider control 1005.

The order budget and available budget field 1045 may correspond to thetotal available budget specified in an advertiser order and the amountof the order that has not yet been committed. For example, an orderbudget of $1,000,000 may be specified in an advertiser order and$500,000 may have been previously utilized for purchasing placements onpublisher web sites within a network leaving $500,000 available forbooking impressions. Displaying the available budget in the priceplacement box enables the ad broker to quickly ascertain the amount ofbudget he may have to work with.

The impression goal entry box 1020, proposed CPM entry box 1030, andcost entry box 1035 may be utilized by the ad broker to specify thenumber of impressions desired, a proposed CPM for each impression, and atotal cost associated with purchasing the desired impressions at theproposed CPM.

The bookable impression field 1040 may display the total number ofimpressions available for booking within a network. Displaying the totalnumber of bookable impressions available may enable the ad broker toascertain the maximum number of impressions he may have to work with.

The impression slider control 1005 may include a chart 1010, a slidercontrol 1025, and a proposed CPM value entry box 1050. The vertical axisof the chart 1010 may correspond to the number of available impressionsand the horizontal axis may correspond to a CPM price. As shown, thenumber of bookable impressions available within a network may increasewith the CPM price. This may occur because the number of publisherswilling to sell advertisement space may increase with the CPM price. Thevolume of bookable impressions may therefore increase accordingly.

A desired number of impressions may be specified via the slider control1025. A threshold line 1055 corresponding to the desired number ofimpressions may be shown on the chart and may be vertically aligned withthe position of the slider control 1025. Raising and lowering the slidercontrol 1025 may raise and lower the threshold line 1055 and thereforethe number of impressions desired. The cost in terms of CPM for bookingthe impressions may be displayed in the proposed CPM value entry box1050. The cost may vary accordingly as the slider control 1025 is raisedand lowered. The values shown within the impression goal entry box 1020,proposed CPM entry box 1030, and cost entry box 1035 may vary as theslider control is adjusted. The impression goal entry box 1020 andproposed CPM value entry box 1030 may display the values specified viathe impression slider control 1005. The value shown in the cost entrybox 1035 may be computed via the following equation:

NumOfImpressions×proposed CPM=Cost

Alternatively, the values shown within the impression goal entry box1020, proposed CPM entry box 1030, and cost entry box 1035 may bespecified. In this case, the impression goal slider control 1005 may beupdated automatically to reflect the various values. As described abovewith reference to FIG. 7, the various values may be locked and unlockedso as to lock the value of a particular parameter. Providing a graphicalcontrol for displaying the number of impressions available at differentproposed CPM prices may enable the ad broker to quickly determine thenumber of impressions available at different price points. This in turnmay allow for more efficient use of an advertising budget

Returning to FIG. 9, the ad broker may add the network to the ad groupregion 910. The name of the network may be displayed in the networkcolumn 995. The category within which publisher web site within thenetwork may be categorized may be shown in the category column 950. Theposition and dimension column 955 and 960 may display the position anddimensions of an advertisement region within a web page for displayingadvertisements. The flight dates columns 965 may correspond to a daterange for displaying an advertisement within the network. The proposedCPM price, impression goal and cost associated with booking impressionswithin each network may be shown in the CPM column 970, impressioncolumn 975, and cost column 980 respectively. These values maycorrespond to the values specified via the network price placement box1000 (FIG. 10) described above. The network information in the ad groupregion 910 may then be saved under an ad group name. Additionaloperations, such as those described with reference to FIG. 5 above, maybe performed on the ad group. For example, the ad group may be renamedor cloned and advertisements may be associated with the ad group.

FIG. 11 is a flow diagram for matching advertiser advertisements topublisher web sites. At block 1100, an advertiser order may becommunicated. The advertiser order may include an advertisement as wellas audience targeting information. For example, the audience targetinginformation may correspond to advertising space region information,demographic information, behavioral information, geographic information,technology information, and web site content information as describedabove. At block 1105, a list of publisher web sites that targetaudiences that match the audience targeting information along withvarious attributes associated with the publisher web sites may bedisplayed. For example, as described above with reference to FIG. 5, thename, category, number of bookable impressions available, and rate cardinformation for each publisher web site may be displayed.

At block 1110, publisher web sites may be selected and purchasinginformation specified. The purchasing information may correspond to anumber of impressions purchased and a proposed CPM price correspondingto a cost per 1000 impressions. The total cost associated withpurchasing the impressions may be calculated according to the followingequation:

NumOfImpressions×proposed CPM=total cost

At block 1115, the selected publisher web sites may be added to an adgroup. Information in the ad group may be displayed. For example, asdescribed above with reference to FIG. 5, the name, categories,advertisement location and dimensions, flight dates for theadvertisements, proposed CPM, impression goal and cost associated witheach publisher web site may be shown. At block 1120, the ad group may besaved. For example, the ad group may be saved to the ad group database320 shown in FIG. 3.

At block 1125, advertisements may be associated with the ad group. Forexample, via a user interface, such as the ad group manager userinterface 800 shown in FIG. 8, advertisements may be associated with thead group.

FIG. 12 is a flow diagram for specifying purchasing information forpurchasing advertisement placements from publishers. The actions shownin the flow diagram may occur at block 1110 of FIG. 11. Referring toFIG. 12, at block 1100, order information may be communicated from anadvertiser. The order information may specify the advertiser's totalbudget. At block 1105, the order budget in the order and the availablebudget may be displayed via a user interface, such as the priceplacement user interface 700 shown in FIG. 7. The available budget maycorrespond to the amount of the order budget available for purchasingadvertising space. The available budget may be lower than the orderbudget because advertisement placements may have been previouslypurchased. The number of bookable impressions and rate card informationcommunicated from the publisher may also be displayed.

At block 1110, the ad broker may specify the desired number ofimpressions, the proposed cost per impression, and/or the total costavailable for purchasing the impressions on a publisher web site. Forexample, the ad broker may utilize the price placement user interface700 shown in FIG. 7 to specify the parameters. At block 1115,non-specified parameters may be calculated based on the specifiedparameters. The parameters may be related by the following equation:

Desired number of impressions×proposed cost per impression=total cost

Parameters that the ad broker may wish to fix may be locked. Forexample, as shown FIG. 7, an impression goal lock 730, proposed CPM lock735, and cost lock 740 may be utilized to lock parameters the ad brokerwishes to fix and to unlock parameters so that they may be calculated.

At block 1120, advertisement placements may be purchased on thepublisher web site and the available budget may be decreased by thetotal cost calculated above. The total number of available impressionson the publisher web site may also be decreased. Displaying the orderbudget and available budget along with the number of bookableimpressions and the rate card information may enable the ad broker toquickly determine how many impressions to purchase and an optimal pricefor the impressions. Providing parameter locks may enable the ad brokerto lock important parameters and automatically calculate less importantparameters. This may further aid the ad broker in determining the numberof impressions to purchase and the optimal price for the impressions.

FIG. 13 is a flow diagram for specifying purchasing information in asecond embodiment. The actions shown in the flow diagram may be utilizedwhen purchasing placements across a network as described above withreference to FIGS. 9 and 10 above. At block 1300, order information maybe communicated from an advertiser. The order information may specifythe advertiser's total budget. At block 1305, the order budget in theorder and the available budget may be displayed via a user interface,such as the network price placement user interface 1000 shown in FIG.10. The available budget may correspond to the amount of the orderbudget available for purchasing advertising space. The available budgetmay be lower than the order budget because advertisement placements mayhave been previously purchased. The number of bookable impressions mayalso be displayed.

At block 1310, a control that provides a visual representation of thenumber of impressions available versus the proposed cost per impressionmay be displayed. The control may correspond to the CPM slider control1005 in the network price placement user interface 1000 shown in FIG.10. The control may include a chart. The upper value of the verticalaccess of the chart may correspond to the number of bookable impressionsavailable within the network and the horizontal access may correspond tothe proposed cost per impression. The upper and lower bounds of thehorizontal access may correspond to rate card information provided bythe network operator.

The control may also include a slider control that may be utilized tospecify the number of impressions desired. A proposed CPM value entrybox may also be shown and may display the cost associated with thenumber of impressions desired. An impression goal entry box, a proposedCPM entry box, and cost entry box may also be displayed.

At block 1315, the CPM slider control may be adjusted so as to obtain adesired number of impressions at a desired proposed cost per impression.The value shown in the proposed CPM value entry box may change when theslider control position is changed. The values shown in the impressiongoal entry box, the proposed CPM entry box, and the cost entry box mayalso change when the slider control position is changed. The cost may becalculated based on the number of impressions desired and the cost perimpression.

At block 1320, advertisement placements may be purchased within thenetwork and the available budget may be decreased by the total costcalculated above. Providing a graphical control for displaying thenumber of impression available at different proposed CPM prices mayenable the ad broker to quickly determine the number of impressionsavailable at different price points. This in turn may allow for moreefficient use of an advertising budget.

FIG. 14 illustrates a general computer system, which may represent thecomputer 305 in FIG. 3, an ad server 410, a publisher web server 405,user terminal or any of the other computing devices referenced herein.The computer system 1400 may include a set of instructions 1445 that maybe executed to cause the computer system 1400 to perform any one or moreof the methods or computer based functions disclosed herein. Thecomputer system 1400 may operate as a standalone device or may beconnected, e.g., using a network, to other computer systems orperipheral devices.

In a networked deployment, the computer system may operate in thecapacity of a server or as a client user computer in a server-clientuser network environment, or as a peer computer system in a peer-to-peer(or distributed) network environment. The computer system 1400 may alsobe implemented as or incorporated into various devices, such as apersonal computer (PC), a tablet PC, a set-top box (STB), a personaldigital assistant (PDA), a mobile device, a palmtop computer, a laptopcomputer, a desktop computer, a communications device, a wirelesstelephone, a land-line telephone, a control system, a camera, a scanner,a facsimile machine, a printer, a pager, a personal trusted device, aweb appliance, a network router, switch or bridge, or any other machinecapable of executing a set of instructions 1445 (sequential orotherwise) that specify actions to be taken by that machine. In oneembodiment, the computer system 1400 may be implemented using electronicdevices that provide voice, video or data communication. Further, whilea single computer system 1400 may be illustrated, the term “system”shall also be taken to include any collection of systems or sub-systemsthat individually or jointly execute a set, or multiple sets, ofinstructions to perform one or more computer functions.

As illustrated in FIG. 14, the computer system 1400 may include aprocessor 1405, such as, a central processing unit (CPU), a graphicsprocessing unit (GPU), or both. The processor 1405 may be a component ina variety of systems. For example, the processor 1405 may be part of astandard personal computer or a workstation. The processor 1405 may beone or more general processors, digital signal processors, applicationspecific integrated circuits, field programmable gate arrays, servers,networks, digital circuits, analog circuits, combinations thereof, orother now known or later developed devices for analyzing and processingdata. The processor 1405 may implement a software program, such as codegenerated manually (i.e., programmed).

The computer system 1400 may include a memory 1410 that can communicatevia a bus 1420. For example, the advertisement listing database 110,database with website links 140, and multimedia advertisement databasemay be stored in the memory. The memory 1410 may be a main memory, astatic memory, or a dynamic memory. The memory 1410 may include, but maynot be limited to computer readable storage media such as various typesof volatile and non-volatile storage media, including but not limited torandom access memory, read-only memory, programmable read-only memory,electrically programmable read-only memory, electrically erasableread-only memory, flash memory, magnetic tape or disk, optical media andthe like. In one case, the memory 1410 may include a cache or randomaccess memory for the processor 1405. Alternatively or in addition, thememory 1410 may be separate from the processor 1405, such as a cachememory of a processor, the system memory, or other memory. The memory1410 may be an external storage device or database for storing data.Examples may include a hard drive, compact disc (“CD”), digital videodisc (“DVD”), memory card, memory stick, floppy disc, universal serialbus (“USB”) memory device, or any other device operative to store data.The memory 1410 may be operable to store instructions 1445 executable bythe processor 1405. The functions, acts or tasks illustrated in thefigures or described herein may be performed by the programmed processor1405 executing the instructions 1445 stored in the memory 1410. Thefunctions, acts or tasks may be independent of the particular type ofinstructions set, storage media, processor or processing strategy andmay be performed by software, hardware, integrated circuits, firm-ware,micro-code and the like, operating alone or in combination. Likewise,processing strategies may include multiprocessing, multitasking,parallel processing and the like.

The computer system 1400 may further include a display 1430, such as aliquid crystal display (LCD), an organic light emitting diode (OLED), aflat panel display, a solid state display, a cathode ray tube (CRT), aprojector, a printer or other now known or later developed displaydevice for outputting determined information. The display 1430 may actas an interface for the user to see the functioning of the processor1405, or specifically as an interface with the software stored in thememory 1410 or in the drive unit 1415.

Additionally, the computer system 1400 may include an input device 1430configured to allow a user to interact with any of the components ofsystem 1400. The input device 1425 may be a number pad, a keyboard, or acursor control device, such as a mouse, or a joystick, touch screendisplay, remote control or any other device operative to interact withthe system 1400.

The computer system 1400 may also include a disk or optical drive unit1415. The disk drive unit 1415 may include a computer-readable medium1440 in which one or more sets of instructions 1445, e.g. software, canbe embedded. Further, the instructions 1445 may perform one or more ofthe methods or logic as described herein. The instructions 1445 mayreside completely, or at least partially, within the memory 1410 and/orwithin the processor 1405 during execution by the computer system 1400.The memory 1410 and the processor 1405 also may includecomputer-readable media as discussed above.

The present disclosure contemplates a computer-readable medium 1440 thatincludes instructions 1445 or receives and executes instructions 1445responsive to a propagated signal; so that a device connected to anetwork 1450 may communicate voice, video, audio, images or any otherdata over the network 1450. The instructions 1445 may be implementedwith hardware, software and/or firmware, or any combination thereof.Further, the instructions 1445 may be transmitted or received over thenetwork 1450 via a communication interface 1435. The communicationinterface 1435 may be a part of the processor 1405 or may be a separatecomponent. The communication interface 1435 may be created in softwareor may be a physical connection in hardware. The communication interface1435 may be configured to connect with a network 1450, external media,the display 1430, or any other components in system 1400, orcombinations thereof. The connection with the network 1450 may be aphysical connection, such as a wired Ethernet connection or may beestablished wirelessly as discussed below. Likewise, the additionalconnections with other components of the system 1400 may be physicalconnections or may be established wirelessly.

The network 1450 may include wired networks, wireless networks, orcombinations thereof. Information related to business organizations maybe provided via the network 1450. The wireless network may be a cellulartelephone network, an 802.11, 802.16, 802.20, or WiMax network. Further,the network 1450 may be a public network, such as the Internet, aprivate network, such as an intranet, or combinations thereof, and mayutilize a variety of networking protocols now available or laterdeveloped including, but not limited to TCP/IP based networkingprotocols.

The computer-readable medium 1440 may be a single medium, or thecomputer-readable medium 1440 may be a single medium or multiple media,such as a centralized or distributed database, and/or associated cachesand servers that store one or more sets of instructions. The term“computer-readable medium” may also include any medium that may becapable of storing, encoding or carrying a set of instructions forexecution by a processor or that may cause a computer system to performany one or more of the methods or operations disclosed herein.

The computer-readable medium 1440 may include a solid-state memory suchas a memory card or other package that houses one or more non-volatileread-only memories. The computer-readable medium 1440 also may be arandom access memory or other volatile re-writable memory. Additionally,the computer-readable medium 1440 may include a magneto-optical oroptical medium, such as a disk or tapes or other storage device tocapture carrier wave signals such as a signal communicated over atransmission medium. A digital file attachment to an e-mail or otherself-contained information archive or set of archives may be considereda distribution medium that may be a tangible storage medium.Accordingly, the disclosure may be considered to include any one or moreof a computer-readable medium or a distribution medium and otherequivalents and successor media, in which data or instructions may bestored.

Alternatively or in addition, dedicated hardware implementations, suchas application specific integrated circuits, programmable logic arraysand other hardware devices, may be constructed to implement one or moreof the methods described herein. Applications that may include theapparatus and systems of various embodiments may broadly include avariety of electronic and computer systems. One or more embodimentsdescribed herein may implement functions using two or more specificinterconnected hardware modules or devices with related control and datasignals that may be communicated between and through the modules, or asportions of an application-specific integrated circuit. Accordingly, thepresent system may encompass software, firmware, and hardwareimplementations.

Accordingly, the method and system may be realized in hardware,software, or a combination of hardware and software. The method andsystem may be realized in a centralized fashion in at least one computersystem or in a distributed fashion where different elements are spreadacross several interconnected computer systems. Any kind of computersystem or other apparatus adapted for carrying out the methods describedherein is suited. A typical combination of hardware and software may bea general-purpose computer system with a computer program that, whenbeing loaded and executed, controls the computer system such that itcarries out the methods described herein.

The method and system may also be embedded in a computer programproduct, which included all the features enabling the implementation ofthe methods described herein, and which when loaded in a computer systemis able to carry out these methods. Computer program in the presentcontext means any expression, in any language, code or notation, of aset of instructions intended to cause a system having an informationprocessing capability to perform a particular function either directlyor after either or both of the following: a) conversion to anotherlanguage, code or notation; b) reproduction in a different materialform.

From the foregoing, it may be seen that the embodiments disclosed hereinprovide an approach for organizing an advertising campaign and bookingadvertisement placements on publisher web sites and networks ofpublisher web sites. For example, publisher web sites and networks ofpublisher web sites may be grouped into various ad groups. The publisherweb sites and/or publisher web sites within a network may shareattributes that may enable targeting a particular audience. Further,providing a graphical user interface that enables determining the numberof impressions available at a given price per impression may enable anad broker to quickly book advertisement across various publisher websites and/or various networks of publisher web sites. This may enablethe ad broker to maximize an advertiser's return on investment.

While the method and system has been described with reference to certainembodiments, it will be understood by those skilled in the art thatvarious changes may be made and equivalents may be substituted withoutdeparting from the scope. In addition, many modifications may be made toadapt a particular situation or material to the teachings withoutdeparting from its scope. Therefore, it is intended that the presentmethod and system not be limited to the particular embodiment disclosed,but that the method and system include all embodiments falling withinthe scope of the appended claims.

1. A method for purchasing advertising space, the method comprising:receiving order information comprising an order budget; displaying, viaa user interface, the order budget and an available budget, theavailable budget corresponding to an amount of the order budgetavailable for purchasing advertising space; receiving, via the userinterface, parameters comprising at least two of: a desired number ofimpressions, a proposed cost per impression, and a total cost;calculating, based on the received parameters, a non-received parametercorresponding to one of: a desired number of impressions, a proposedcost per impression, and a total cost, wherein upon calculating thenon-received parameter the desired number of impressions, the proposedcost per impression, and the total cost are known; decrementing theavailable budget by the total cost for the impressions on a web site;and purchasing the desired number of impressions at the proposed costper impression from a publisher with a web site for hosting anadvertisement.
 2. The method according to claim 1, wherein an impressioncorresponds to at least one of: displaying an advertisement, clicking onan advertisement, and purchasing goods or services after clicking on anadvertisement.
 3. The method according to claim 1, wherein the desirednumber of impressions, the proposed cost per impression, and the costare related by the following equation:desired number of impressions×proposed cost per impression=total cost 4.The method according to claim 1, further comprising locking, via theuser interface, at least one parameter and unlocking at least oneparameter, wherein the unlocked at least one parameter is automaticallycalculated based on the at least one locked parameter.
 5. A method forselling advertising space, the method comprising: receiving web siteinformation, the web site information including a number of availableimpressions and price information; displaying, via a user interface, thenumber of available impressions and the price information; receiving,via the user interface, parameters comprising at least two of: a desirednumber of impressions, a proposed cost per impression, and a total cost;calculating, based on the received parameters, a non-received parametercorresponding to one of: a desired number of impressions, a proposedcost per impression, and a total cost, wherein upon calculating thenon-received parameter the desired number of impressions, the proposedcost per impression, and the total cost are known; selling the desirednumber of impressions at the proposed cost; and decrementing the numberof available impressions.
 6. The method according to claim 5, whereinthe price information comprises at least one of: a list price, a targetprice, and a floor price.
 7. The method according to claim 5, wherein animpression corresponds to at least one of: displaying an advertisement,clicking on an advertisement, and purchasing goods or services afterclicking on an advertisement.
 8. A machine-readable storage mediumhaving stored thereon, a computer program comprising at least one codesection for purchasing advertising space, the at least one code sectionbeing executable by a machine for causing the machine to perform actsof: receiving order information comprising an order budget; displaying,via a user interface, the order budget and an available budget, theavailable budget corresponding to an amount of the order budgetavailable for purchasing advertising space; receiving, via the userinterface, parameters comprising at least two of: a desired number ofimpressions, a proposed cost per impression, and a total cost;calculating, based on the received parameters, a non-received parametercorresponding to one of: a desired number of impressions, a proposedcost per impression, and a total cost, wherein upon calculating thenon-received parameter the desired number of impressions, the proposedcost per impression, and the total cost are known; decrementing theavailable budget by the total cost for the impressions on a web site;and purchasing the desired number of impressions at the proposed costper impression from a publisher with a web site for hosting anadvertisement.
 9. The machine-readable storage medium according to claim8, wherein an impression corresponds to at least one of: displaying anadvertisement, clicking on an advertisement, and purchasing goods orservices after clicking on an advertisement.
 10. The machine-readablestorage medium according to claim 8, wherein the desired number ofimpressions, the proposed cost per impression, and the cost are relatedby the following equation:desired number of impressions×proposed cost per impression=total cost.11. The machine-readable storage medium according to claim 8, whereinthe at least one code section comprises code that enables locking, viathe user interface, at least one parameter and unlocking at least oneparameter, wherein the unlocked at least one parameter is automaticallycalculated based on the at least one locked parameter.
 12. A system forpurchasing advertising space, the system comprising: circuitry thatenables receiving order information comprising an order budget; thecircuitry also enables displaying, via a user interface, the orderbudget and an available budget, the available budget corresponding to anamount of the order budget available for purchasing advertising space;receiving, via the user interface, parameters comprising at least twoof: a desired number of impressions, a proposed cost per impression, anda total cost; calculating, based on the received parameters, anon-received parameter corresponding to one of: a desired number ofimpressions, a proposed cost per impression, and a total cost, whereinupon calculating the non-received parameter the desired number ofimpressions, the proposed cost per impression, and the total cost areknown; decrementing the available budget by the total cost for theimpressions on a web site; and purchasing the desired number ofimpressions at the proposed cost per impression from a publisher with aweb site for hosting an advertisement.
 13. The system according to claim12, wherein the circuitry enables purchasing the desired number ofimpressions at the proposed cost per impression from a publisher with aweb site for hosting an advertisement.
 14. The system according to claim12, wherein an impression corresponds to at least one of: displaying anadvertisement, clicking on an advertisement, and purchasing goods orservices after clicking on an advertisement.
 15. The system according toclaim 12, wherein the desired number of impressions, the proposed costper impression, and the cost are related by the following equation:desired number of impressions×proposed cost per impression=total cost.16. The system according to claim 12, wherein the circuitry enableslocking, via the user interface, at least one parameter and unlocking atleast one parameter, wherein the unlocked at least one parameter isautomatically calculated based on the at least one locked parameter. 17.A machine-readable storage medium having stored thereon, a computerprogram comprising at least one code section for selling advertisingspace, the at least one code section being executable by a machine forcausing the machine to perform acts of: receiving web site informationcomprising a number of available impressions and price information;displaying, via a user interface, the number of available impressionsand the price information; receiving, via the user interface, parameterscomprising at least two of: a desired number of impressions, a proposedcost per impression, and a total cost; calculating, based on thereceived parameters, a non-received parameter corresponding to one of: adesired number of impressions, a proposed cost per impression, and atotal cost, wherein upon calculating the non-received parameter thedesired number of impressions, the proposed cost per impression, and thetotal cost are known; selling the desired number of impressions at theproposed cost; and decrementing the number of available impressions. 18.The machine-readable storage medium according to claim 17, wherein theprice information comprises at least one of: a list price, a targetprice, and a floor price.
 19. The machine-readable storage mediumaccording to claim 17, wherein an impression corresponds to at least oneof: displaying an advertisement, clicking on an advertisement, andpurchasing goods or services after clicking on an advertisement.
 20. Asystem for selling advertising space, the system comprising: circuitrythat enables receiving web site information comprising a number ofavailable impressions and price information; the circuitry also enablesdisplaying, via a user interface, the number of available impressionsand the price information; receiving, via the user interface, parameterscomprising at least two of: a desired number of impressions, a proposedcost per impression, and a total cost; calculating, based on thereceived parameters, a non-received parameter corresponding to one of: adesired number of impressions, a proposed cost per impression, and atotal cost, wherein upon calculating the non-received parameter thedesired number of impressions, the proposed cost per impression, and thetotal cost are known; selling the desired number of impressions at theproposed cost; and decrementing the number of available impressions. 21.The system according to claim 20, wherein the price informationcomprises at least one of: a list price, a target price, and a floorprice.
 22. The system according to claim 20, wherein an impressioncorresponds to at least one of: displaying an advertisement, clicking onan advertisement, and purchasing goods or services after clicking on anadvertisement.